Query Parameters এর ব্যবহার

Java Technologies - অ্যাপাচি এইচটিটিপি ক্লায়েন্ট (Apache HTTP Client) - HTTP Headers এবং Parameters হ্যান্ডেল করা
324

অ্যাপাচি HTTP ক্লায়েন্ট (Apache HTTP Client) ব্যবহার করে Query Parameters সংযোজন করা একটি সাধারণ কাজ, বিশেষ করে যখন API-তে GET অনুরোধ পাঠানো হয়। Query parameters URL-এর অংশ হিসেবে থাকে এবং সার্ভারে নির্দিষ্ট ডেটা বা ফিল্টারিং সংক্রান্ত অনুরোধ পাঠানোর জন্য ব্যবহৃত হয়।

যেমন, একটি URL-এর মধ্যে ?key1=value1&key2=value2 এইরকম শর্তে প্রেরিত তথ্য সার্ভারে পৌঁছায়।

Query Parameters এর ব্যবহার

Apache HTTP Client-এ HttpGet এর সাথে Query Parameters যুক্ত করতে URL তৈরির সময় এই পদ্ধতি ব্যবহার করা হয়।

কোড উদাহরণ: Query Parameters এর সাথে GET অনুরোধ

import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import java.net.URI;
import java.net.http.URIBuilder;

public class ApacheHttpClientWithQueryParams {
    public static void main(String[] args) {
        // HttpClient তৈরি করুন
        CloseableHttpClient httpClient = HttpClients.createDefault();

        try {
            // URIBuilder ব্যবহার করে URL এবং Query Parameters তৈরি করা
            URI uri = new URIBuilder("https://jsonplaceholder.typicode.com/posts")
                    .addParameter("userId", "1")
                    .addParameter("id", "2")
                    .build();

            // HttpGet তৈরি করুন
            HttpGet httpGet = new HttpGet(uri);

            System.out.println("Executing request: " + httpGet.getRequestLine());

            // অনুরোধ পাঠিয়ে প্রতিক্রিয়া সংগ্রহ করুন
            CloseableHttpResponse response = httpClient.execute(httpGet);

            try {
                // প্রতিক্রিয়া থেকে স্ট্যাটাস কোড পান
                int statusCode = response.getStatusLine().getStatusCode();
                System.out.println("Response Status Code: " + statusCode);

                // HttpEntity পান এবং ডেটা পড়ুন
                HttpEntity entity = response.getEntity();
                if (entity != null) {
                    // কনটেন্ট স্ট্রিং আকারে পড়ুন
                    String responseBody = EntityUtils.toString(entity);
                    System.out.println("Response Content: " + responseBody);
                }
            } finally {
                // প্রতিক্রিয়া বন্ধ করুন
                response.close();
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                // HttpClient বন্ধ করুন
                httpClient.close();
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }
}

কোড ব্যাখ্যা

  1. Query Parameters তৈরি করা

    URI uri = new URIBuilder("https://jsonplaceholder.typicode.com/posts")
            .addParameter("userId", "1")
            .addParameter("id", "2")
            .build();
    
    • URIBuilder ব্যবহার করে URL এর সাথে Query Parameters যুক্ত করা হয়েছে। এখানে userId=1 এবং id=2 দুটি প্যারামিটার যুক্ত করা হয়েছে।
  2. HttpGet তৈরি করা

    HttpGet httpGet = new HttpGet(uri);
    
    • HttpGet অবজেক্টে তৈরি করা URL (যার মধ্যে Query Parameters অন্তর্ভুক্ত) পাস করা হয়েছে।
  3. HTTP অনুরোধ পাঠানো এবং প্রতিক্রিয়া প্রাপ্তি
    • HTTP GET অনুরোধ সার্ভারে পাঠানো হয়েছে এবং প্রতিক্রিয়া (HttpResponse) গ্রহণ করা হয়েছে।
    • response.getEntity() ব্যবহার করে HTTP প্রতিক্রিয়া থেকে ডেটা নেওয়া হয়েছে এবং তা EntityUtils.toString(entity) এর মাধ্যমে স্ট্রিং আকারে রূপান্তরিত করা হয়েছে।
  4. প্রতিক্রিয়া পর্যালোচনা
    • সার্ভারের স্ট্যাটাস কোড এবং প্রতিক্রিয়া কন্টেন্ট পর্যালোচনা করা হয়েছে।

Query Parameters সম্পর্কে কিছু গুরুত্বপূর্ণ نکতাস:

  1. প্যারামিটার যুক্ত করার নিয়ম
    • URL এর শেষে ? চিহ্নের মাধ্যমে প্রথম প্যারামিটার শুরু হয় এবং subsequent প্যারামিটার গুলি & দ্বারা আলাদা হয়।
    • উদাহরণ: https://example.com/api?key1=value1&key2=value2
  2. প্যারামিটার নাম এবং মান
    • Query Parameters সাধারণত কী-মূল্য জোড়া (key-value pair) আকারে থাকে।
    • key1 হল প্যারামিটারের নাম এবং value1 তার মান।
  3. URL এ নিরাপত্তা এবং ইনকোডিং
    • Special characters, যেমন স্পেস বা &, %, ? ইত্যাদি URL এ সংযোজনের সময় এনকোড করা প্রয়োজন।
    • URLEncoder.encode() পদ্ধতি ব্যবহার করে প্যারামিটারগুলির মান নিরাপদে এনকোড করা যেতে পারে।

সারাংশ

Query Parameters HTTP GET অনুরোধের মাধ্যমে সার্ভারে নির্দিষ্ট ডেটা প্রেরণের জন্য ব্যবহৃত হয়। Apache HTTP Client-এ HttpGet এবং URIBuilder ব্যবহার করে সহজেই URL-এ Query Parameters যোগ করা যায়। এই পদ্ধতি API কলের সময় বিভিন্ন ধরনের ফিল্টারিং বা ডেটা অনুসন্ধান কার্যকর করতে সাহায্য করে।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...